FIG. 1 shows a server 100 adapted to handle five types of network traffic. The first type of network traffic is typical network traffic such as, for example, common Ethernet network traffic including Internet protocol (IP) or other layer 3 (L3) technologies transporting small amounts of data and control information around the network and/or larger amounts of data on behalf of Transport protocols like UDP or TCP. The first type of network traffic is handled by a first network traffic system including an Ethernet connector 110; a layer 2 (L2) network interface card (NIC) arrangement 120 including an L2 NIC 130; a peripheral component interconnect (PCI) bridge 140; an L2 NIC driver 150; a full-feature software transmission control protocol (TCP) stack 160; a socket service switch 170; and a socket service 180. The full-feature software TCP stack 160 supports socket services as well as other services.
The second type of network traffic is TCP accelerated traffic such as, for example, TCP running on top of IP. The protocol is used to move large data across conventional Ethernet networks. The server 100 may offload the TCP portion of the network traffic, thereby freeing server resources for running non-networking tasks. The second type of network traffic is handled by a second network traffic system including a TCP offload engine (TOE) that accelerates TCP traffic. The second network traffic system includes an Ethernet connector 190; a layer 4 (L4) offload adapter arrangement 200 including an L2 NIC 210 and a TCP processor 220; the PCI bridge 140; an L4 driver 230; the socket service switch 170; and the socket service 180. The TCP accelerated traffic is typically serviced by the socket service 180.
The third type of network traffic is storage traffic. Conventional storage systems use small computer system interface (SCSI) directly attached or carried over transports such as Fibre Channel technologies to connect the server 100 to storage disks. Both of these technologies share a common command set e.g. SPC-2 ans common software interface or service, e.g. a SCSI port filter driver in Windows operating systems. Recently, a protocol has been developed that provides SCSI traffic to be run over a TCP/IP network. The recent protocol removes the need for SCSI or Fibre Channel network connections, thereby allowing the storage traffic to be run over the same network as used for networking (e.g., Ethernet). The third type of network traffic is handled by a third network traffic system including an adapter that implements the recent protocol and provides SCSI miniport service. The third network traffic system includes an Ethernet connector 240; a storage host bus adapter (HBA) arrangement 250 including an L2 NIC 260, a TCP processor 270 and an Internet SCSI (iSCSI) processor 280; the PCI bridge 140; a SCSI driver 290; and a SCSI miniport service 300.
The fourth type of network traffic is interprocess communication (IPC) traffic or high performance computing (HPC). This type of network allows programs running on different servers to communicate quickly and with very low overhead. IPC networks are used with, for example, distributed applications, database servers and file servers. For example, IPC networks can be used when the computing power needed exceeds the capacity of a particular server such that several servers are clustered to perform the task or when multiple servers are used for ultra-reliable operation. This type of service is provided through a remote direct memory access (RDMA) interface (e.g., Winsock Direct for a Microsoft operating system and other interfaces for other OS) that directly interfaces with applications. The fourth type of network traffic is handled by a fourth network traffic system including an adapter that provides services as a dedicated, proprietary network (e.g., Infiniband products). The fourth network traffic system includes a proprietary network interface 310; an RDMA NIC arrangement 320 including an L2 NIC adapted for the particular network 330, an L4 processor 340 and an RDMA processor 345; the PCI bridge 140; an RDMA driver 350; and an RDMA service 360 (e.g., Winsock Direct).
The fifth type of network traffic is any traffic relating to any type of operating system (OS) Agnostic Management Entity or device. These entities or devices monitor the state of the server 100 and transmit information relating to state and statistical values over the network or other types of information such as information targeted to a computer display. The fifth type of network traffic is handled by a fifth network traffic system that includes an Ethernet connector 370; a server management agent 380; and optionally a keyboard/video/mouse service 390. The fifth network traffic system provides keyboard, video and mouse hardware services to the server 100 so that these interfaces can be redirected over the network to a central server management system.
The five network traffic systems supported by the server 100 use a substantial amount of space within the server and are typically quite costly. Combining the five types of networks is hindered on a number of fronts. For example, many operating systems insist that each connector have its own driver and its own hardware. Accordingly, each of the five network traffic systems has its own data and control paths. Furthermore, the use of proprietary network interfaces minimizes the possibility of integration and common and easy management of the server resources. Thus, a number of hardware and software redundancies and inefficiencies remain.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.